# 读文件 文件不存在时系统会报错
# 使用上下文管理器with关键字，表示会自动将文件进行关闭，避免出现内存溢出的问题
with open("a.txt", mode="r", encoding="utf-8") as f:
    '''
        注意:文件读取一次之后就无法读取第二次了
    '''
    # 使用read方法直接读取文件中所有内容
    print(f.read())
    # 使用readlines()将读取到的每一行放入到列表当中
    print(f.readlines())
    # 使用readline()读取文件的一行内容 文件读取完成之后返回""
    print(f.readline())
    # 文件对象可以进行迭代读取每一行
    for i in f:
        print(i, end="")

# 写文件
# 对于不存在的文件通过写文件后会自动创建  写文件会将元文件内容覆盖
with open("./b.txt", "w", encoding="utf-8") as f:
    # \n表示转义字符，如果不想进行转义可以使用r“写入的内容”
    f.write("www\nbaidu\ncom")

# 如果写文件不把内容覆盖，使用a
with open("./b.txt", "a", encoding="utf-8") as f:
    # \n表示转义字符，如果不想进行转义可以使用r“写入的内容”
    f.write("\nhahaha")

# 除了普通文本(.txt)读取模式，其他文件类型都需要加上：b，以二进制的方式进行读写
# 读写：图片，视频，表格，音频.....
# rb
# wb
# ab
# 注意点：使用二进制的方式读写文件的时候不能指定编码格式
# with open("文件内容","rb") as file2:
# print(file2.read())
